Computerized project management tools are used in an organization to coordinate complex projects so that they may be successfully completed in an efficient manner. In general, such tools collect data that describe the organization. This collected data describe materials, supplies, and equipment available for or needed by a project, the personnel available to work on the project, project timing constraints, project budget, and the like. Such tools then process this data so that information pertinent to evaluating a project's progress, needs, and forecast is generated. The project management tools' data structures are routinely updated during the course of a project so that they remain current. Resources are allocated and reallocated within the organization in response to the information generated by the project management tools in order to complete the project in a desired manner.
The present invention relates to two diverse types of project management tools. One type is a network scheduling tool (NST) and the other is a performance measurement tool (PMT). NSTs are useful in coordinating the schedule of a complex project and in managing the projects resources. PMTs are useful in allocating budgets and in controlling or otherwise managing a project's costs. Both types of project management tools are well known to those skilled in the art of project management, and both types of tools are often used in the management of a single complex project.
When both types of tools are used on a single project, it is critically important that they be integrated. In other words, certain types of data must be maintained in alignment between the NST and the PMT. For example, if the NST defines a task differently from the PMT, then the feedback provided by the PMT will be meaningless. Worse yet, a task scheduled in the NST may not have a budget allocated for its completion if the PMT does not have accurate data describing the task.
Maintaining alignment between an NST and a PMT is difficult because conventional NSTs and conventional PMTs use incompatible methodologies in collecting and processing the data they need to perform their respective functions. For example, NST's assume resource usage is linear over time. In other words, if a resource, such as 10 people, is allocated to performing a particular task, called an activity in NST terminology, then the NST assumes that the resource (i.e. the 10 people) is consumed at a constant rate throughout the duration of the task or activity. More detail is undesirable because it is irrelevant to the scheduling function and would only obfuscate scheduling information generated by the NST.
On the other hand, the PMT is concerned with allocating budgets and measuring how actual performance conforms to budgets. The focus is on money more than time. While PMTs recognize resource planning and usage, they are required to budget resource usage as that usage is actually expected to occur. For example, the PMT recognizes that a task, called a work package in PMT terminology, which averages 10 people throughout the duration of the task might actually be expected to utilize 20 people at its beginning stages and to taper down to 1 person at its ending stages. This added level of detail is necessary to insure that accurate budgets are prepared and followed.
In addition, a conventional NST utilizes only a single technique for taking credit for completed work. In particular, a statusing operation in an NST generates information that describes only the percentage of an activity's planned duration that has transpired as of a status date. For example, at one week into an activity that is scheduled to require two weeks for completion, the activity is considered 50% complete. This limited level of crediting completed work is acceptable for the NST function and even desirable because added details would only obfuscate scheduling concerns. On the other hand, because PMTs deal with budgeting and performance against an allocated budget, they are required to focus upon additional details. For example, a conventional PMT recognizes that a work package which is expected to require two weeks for completion might have consumed 90% of its budget and be 90% complete after the first week.
Furthermore, data structures used by conventional NSTs are less complex than data structures used by conventional PMTs. Hierarchical data structures formed and recorded in NSTs seldom exceed 2-3 levels of hierarchy while data structures formed and recorded in PMTs for projects performed under government contracts often have 10-15 levels of hierarchy. Hence, no set relationship exists between the hierarchy of NST activities and the hierarchy of PMT work packages.
While conventional PMTs may be viewed as having more complex data requirements than conventional NSTs, PMTs cannot simply be expanded to provide the NST functions. Since PMTs deal with performance and budgeting matters, they typically employ strict data security measures to insure that approved baselines are not lightly altered, either by accident or individual action. On the other hand, NSTs require flexibility. They are designed to easily perform numerous iterations of "what if" scenarios and to quickly "snap" new baseline configurations. The rigid security measures of a conventional PMT would defeat the flexibility needed by an NST.
Another reason why PMTs cannot simply be expanded to provide NST functions is that in most organizations NSTs are typically designed for and placed under the control of the management that is responsible for project completion. PMTs are typically designed for and placed under the control of financial departments which provide specialized services for the project management. Such an expansion would place those who provide specialized financial services in the role of being responsible for project scheduling. Not only do the financial departments lack the knowledge needed to make schedules, but such an arrangement would usurp project management responsibilities. Hence, any expansion of PMT functionality to include NST functions would be unacceptable to project management.
Accordingly, conventional project management systems typically include an NST and a PMT. The NST and PMT operate independently of one another. Any integration between the NST and the PMT takes place manually. In other words, the common elements of data between the NST and the PMT are transcribed two or three times. Moreover, an operator of the PMT and a project manager must undergo a tedious and time consuming interviewing process so that a PMT operator will understand how to set up an acceptable work breakdown structure within a PMT. Each of these processes leads to errors and misalignment between NST and PMT data. And, the problems of maintaining alignment between NST and PMT data are multiplied by the continuous changes in an organization's circumstances that take place throughout the course of a project. Consequently, project management suffers, organizational resources are not used as efficiently as they might be, and overall costs increase. While computer programs have been written to check for certain discrepancies and misalignment between NST and PMT data, such programs typically fail to catch all errors and such programs do nothing to prevent the discrepancies from occurring in the first place.